package org.ehe.finance.subject.domain.vo;

import org.ehe.common.mybatis.core.domain.BaseEntity2;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.ehe.finance.subject.domain.ErpFinanceAccountSubject;

import java.time.LocalDateTime;

/**
 * 会计科目视图对象 erp_finance_account_subject
 *
 * @author zhangnn
 * @date 2025-08-12
 */
@Data
@AutoMapper(target = ErpFinanceAccountSubject.class)
public class ErpFinanceAccountSubjectVo extends BaseEntity2 {
    /**
     * 科目ID
     */
    private Long id;

    /**
     * 科目编码
     */
    private String subjectCode;

    /**
     * 科目名称
     */
    private String subjectName;

    /**
     * 父级科目ID
     */
    private Long parentId;

    /**
     * 父级科目名称
     */
    private String parentName;

    /**
     * 科目级次
     */
    private Integer subjectLevel;

    /**
     * 科目类型:1资产,2负债,3所有者权益,4收入,5费用
     */
    private Integer subjectType;

    /**
     * 科目类型名称
     */
    private String subjectTypeName;

    /**
     * 余额方向:1借方,2贷方
     */
    private Integer balanceDirection;

    /**
     * 余额方向名称
     */
    private String balanceDirectionName;

    /**
     * 是否末级科目
     */
    private Boolean leaf;

    /**
     * 是否现金科目
     */
    private Boolean cash;

    /**
     * 是否银行科目
     */
    private Boolean bank;

    /**
     * 辅助核算类型:customer,supplier,employee,project,department
     */
    private String auxiliaryAccounting;

    /**
     * 辅助核算类型名称
     */
    private String auxiliaryAccountingName;

    /**
     * 状态:0禁用,1启用
     */
    private Integer status;

    /**
     * 状态名称
     */
    private String statusName;

    /**
     * 备注
     */
    private String remark;

    /**
     * 创建部门
     */
    private Long createDept;

    /**
     * 创建部门名称
     */
    private String createDeptName;
}
